#ifndef SCCALCULATOR_H
#define SCCALCULATOR_H

#include <QWidget>
#include <QPushButton>
#include <QLineEdit>
#include <QString>
#include <string>
#include <QMediaPlayer>
#include <QMediaPlaylist>
#include <QShortcut>
#include <QToolTip>
#include <QMovie>
#include "SClogic.h"
namespace Ui {
class SCcalculator;
}

class SCcalculator : public QWidget
{
    Q_OBJECT

public:
    explicit SCcalculator(QWidget *parent = nullptr);
    ~SCcalculator();
public slots:
    //槽
    void button_0();
    void button_1();
    void button_2();
    void button_3();
    void button_4();
    void button_5();
    void button_6();
    void button_7();
    void button_8();
    void button_9();
    void button_pi();
    void button_e();
    void button_dot();
    void button_plus();
    void button_minus();
    void button_multiply();
    void button_divide();
    void button_pow();
    void button_mod();
    void button_sin();
    void button_cos();
    void button_tan();
    void button_sqrt();
    void button_log();
    void button_ln();

    void button_reciprocal();
    void button_factorial();
    void button_nagative();
    void button_equal();
    void button_left();
    void button_right();
    void button_clear();
    void button_clearnum();
    void button_delete();

    void ButtonSquare();
    void Button10PowX();
    void ButtonExp();
    void ButtonAbs();

private:
    Ui::SCcalculator *ui;

    QMediaPlayer *player;
    QMediaPlaylist *playlist;

    Factory m_fact;
    Calculator m_cal;

};

#endif // SCCALCULATOR_H
